1. Field of the Invention
The present invention relates to protecting peripheral devices in a computer system and, in particular, to protecting data in memory devices to prevent the loss of data in in-circuit programmable read-only memories by trapping inadvertent or malicious software global erase command sequences sent to such devices to erase their contents.
2. Description of the Prior Art
Often, peripheral devices employed in computer systems are equipped with functions which may prove harmful if inadvertently or maliciously employed. It would be desirable, therefore, to disable such functions, such that their assertion is rendered impossible through software control. This would be particularly advantageous in multiprocessor systems.
For example, in a standard electrically erasable programmable read-only memory (EEPROM) which conforms to the Japanese Electronic Device standard, JEDEC, them is a function initiated by a software command sequence which can be used to globally erase the entire memory device. This software command sequence, the global erase command sequence, is typically used to erase the device prior to re-programming.
However, in some applications, such as firmware storage of critical computer system functions, the total erasure of the memory device would cause the host system to fail since the contents are needed for basic operation of the computer system. The erasure of the entire device would be disastrous especially when a portion of the device's contents is intended to be non-volatile. The mechanism within a standard EEPROM to forcing a complete erasure of the device consists of a specific command sequence targeted to specific addresses within the device's I/O space and is plainly undesirable in certain applications.
A typical solution to the non-volatile storage problem is to simply use a standard read-only memory (ROM) or an ultraviolet erasable, electrically programmable mad-only memory (EEPROM). This will solve the problem of inadvertent erasure, however, it will not provide the in-circuit programming facility provided by the electrically erasable programmable read-only memory.